#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef double db;
LL n,ans;
LL gcd(LL a,LL b)
{
    return b?gcd(b,a%b):a;
}
bool check(LL a,db b)
{
    LL bb=b;
    if((db)bb-b==0)
    {
        if(gcd(a,bb)==1&&a!=bb)return true;
    }
    return false;
}
int main()
{
    scanf("%lld",&n);
    for(LL d=1;d<=sqrt(n*2);++d)
    {
        if((2*n)%d==0)
        {
            for(LL a=1;a<=sqrt(n/d);++a)
            {
                db b=sqrt(2*n/d-a*a);
                if(check(a,b))++ans;
            }
            for(LL a=1;a<=sqrt(d/2);++a)
            {
                db b=sqrt(d-a*a);
                if(check(a,b))++ans;
            }
        }
    }
    printf("%lld\n",ans*4+4);
    return 0;
}